Wireless communication systems are known to comprise wireless communication units, such as in-car mobile and/or hand-held portable radios, that communicate with each other and a fixed infrastructure using wireless communication resources. Many of the user features provided by such wireless communication units are often based on software programs stored and executed within the wireless communication units. That is, algorithms electronically stored in memories are executed by processing devices, such as microprocessors, to realize certain features.
As existing features are improved and new features are developed for wireless communication units, new versions of software become available with increasing frequency. Users of wireless communication units typically desire to receive the newest versions of updated software as quickly and as efficiently as possible in order to take advantage of the improvements.
Prior art approaches for delivering updated software to wireless communication units are not always convenient and/or efficient. One method requires a user to bring the wireless communication unit to a central location, such as a service shop operated by a system administrator or service provider. The unit is then either provided with replacement parts containing the updated software (i.e., replacement memory devices) or physically connected to a device that transfers the updated software to the unit. Regardless of how the updated software is actually transferred, this method is both time-consuming and inconvenient to users since they are typically required to bring their unit in for service during normal work hours.
Another method is used to overcome the difficulties presented by the previous method. To this end, the wireless communication units are capable of receiving the updated software wirelessly as a special type of data message. This eliminates the need to physically alter the unit or to co-locate the unit with a reprogramming device. However, updated software versions often comprise many megabytes of data; transmission of such a large amount of data can be prohibitively expensive. That is, the extensive use of wireless communication resources required to send the updated software to a large number of units, as is often the case with even a modest-sized communication system, would significantly impact the system's ability to provide regular services. Therefore, a need exists for an approach that allows updated software to be provided without the inconvenience of bringing the unit to a service shop and which does not place a prohibitively large burden on wireless communication resources.